package com.amado.course26InterfaceAbstract;

/*
1.static可以修饰属性和方法。
2.static声明的成员变量时全局变量，在整个系统运行中都存在。
3.static声明的方法和属性，一般直接通过类名来访问。
4.new一个对象，对象不包括静态变量，静态变量存放在静态区域。
5.静态方法中不能出现this，super，因为调用静态方法的是类，而不是对象。
6.在本类中：静态方法不能直接调用非静态的属性和方法。反之，可以。

static静态块：
1.static{}(即static块)
2.会在类被加载的时候执行且仅会被执行一次、
3.一般用来初始化静态变量和调用静态方法一句话：用来做类的初始化工作的
 *
 */
public class StaticBlock {
	static String name="张";
	int age=10;
	static {
		System.out.println("StaticBlock static");
		if(true){
			
		}
	}

	StaticBlock() {
		System.out.println("StaticBlock structure");
	}
	public void print() {
		System.out.println("print");
	}
	public void printOne() {
		this.print();
		System.out.println("print");
		printTwo();
	}
	public static void printTwo() {
	}
	public static void main(String[] args) {
		new StaticBlock().name="李";
		new StaticBlock().age=20;
		System.out.println(new StaticBlock().name);
		System.out.println(new StaticBlock().age);
		new StaticBlock().print();
	}
}
